package com.dodoke.domain;

import java.util.Date;
import java.util.List;

import com.dodoke.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.dodoke.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 【请填写功能名称】对象 wx_prize_record
 *
 * @author dodoke
 * @date 2020-08-25
 */
public class WxPrizeRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 微信用户id */
    @Excel(name = "微信用户id")
    private Long wxId;

    /** 商品id */
    @Excel(name = "商品id")
    private Long goodsId;

    /** 具体二维码id */
    @Excel(name = "具体二维码id")
    private Long detailQrId;

    /** 过期时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "过期时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expireTime;

    /** 默认为0表示未领取，1表示已领取，2表示过期 */
    @Excel(name = "默认为0表示未领取，1表示已领取，2表示过期")
    private Integer type;

    private WxImage wxImage;


    private List<WxGoods> wxGoodsList;

    public WxImage getWxImage() {
        return wxImage;
    }

    public void setWxImage(WxImage wxImage) {
        this.wxImage = wxImage;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setWxId(Long wxId)
    {
        this.wxId = wxId;
    }

    public Long getWxId()
    {
        return wxId;
    }
    public void setGoodsId(Long goodsId)
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId()
    {
        return goodsId;
    }
    public void setDetailQrId(Long detailQrId)
    {
        this.detailQrId = detailQrId;
    }

    public Long getDetailQrId()
    {
        return detailQrId;
    }
    public void setExpireTime(Date expireTime)
    {
        this.expireTime = expireTime;
    }

    public Date getExpireTime()
    {
        return expireTime;
    }
    public void setType(Integer type)
    {
        this.type = type;
    }

    public Integer getType()
    {
        return type;
    }

    public List<WxGoods> getWxGoodsList() {
        return wxGoodsList;
    }

    public void setWxGoodsList(List<WxGoods> wxGoodsList) {
        this.wxGoodsList = wxGoodsList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("wxId", getWxId())
            .append("goodsId", getGoodsId())
            .append("detailQrId", getDetailQrId())
            .append("expireTime", getExpireTime())
            .append("type", getType())
            .toString();
    }
}
